package com.koron.rating.change.mapper;

import com.koron.rating.change.bean.RatingEqDto;
import com.koron.rating.change.bean.UnitChangeBean;
import com.koron.rating.change.bean.UnitChangeDto;
import org.apache.ibatis.annotations.Param;

import java.util.Collection;
import java.util.Date;
import java.util.List;

public interface UnitChangeBeanMapper {
    int deleteByPrimaryKey(String id);

    int insert(UnitChangeBean record);

    int insertSelective(UnitChangeBean record);

    UnitChangeBean selectByPrimaryKey(String id);

    int updateByPrimaryKeySelective(UnitChangeBean record);

    int updateByPrimaryKey(UnitChangeBean record);

    List<RatingEqDto> queryByAll(UnitChangeDto dto);

    int updateRatingStatusById(@Param("updatedRatingStatus") String updatedRatingStatus, @Param("id") String id);

    int deleteJoin(String id);

    // 不能同时存在两个或以上 未审核通过的单元变更单
    int countByRatingStatusIn(@Param("ratingStatusCollection")Collection<String> ratingStatusCollection);

    // 每次保存更新最后更新时间
    int updateUpdateTimeById(@Param("updatedUpdateTime")Date updatedUpdateTime,@Param("id")String id);

    //每次保存更新最后更新时间
    int updateUpdateTimeAndUpdateByAndUpdateByNameById(@Param("updatedUpdateTime")Date updatedUpdateTime,@Param("updatedUpdateBy")String updatedUpdateBy,@Param("updatedUpdateByName")String updatedUpdateByName,@Param("id")String id);


}
